Chapter 01

AI 크롤러란 무엇인가?

1.1 전통적 크롤러 vs AI 크롤러

웹 크롤러(Web Crawler)는 인터넷의 웹페이지를 자동으로 방문하여 콘텐츠를 수집하는 소프트웨어입니다. 우리에게 익숙한 Googlebot은 검색 결과를 만들기 위해 웹을 크롤링합니다. 사용자가 검색하면 해당 페이지로 트래픽을 보내주는, 일종의 "가져가고 돌려주는" 관계였습니다.

AI 크롤러는 근본적으로 다릅니다. GPTBot, ClaudeBot 같은 AI 크롤러는 수집한 콘텐츠를 대규모 언어 모델(LLM) 학습에 사용하거나, AI 검색 응답을 생성하는 데 활용합니다. 사용자에게 직접 답변을 제공하기 때문에, 전통적인 "크롤링 → 색인 → 트래픽 유입"의 순환 구조가 깨지는 경우가 많습니다.

1.2 왜 AI 크롤러 최적화가 중요한가?

2025년 기준으로 제품 발견(product discovery)의 약 40%가 AI 플랫폼에서 시작됩니다. ChatGPT, Perplexity, Claude 등에서 사용자가 질문하면, AI가 웹에서 정보를 가져와 직접 답변합니다. 이 답변에 여러분의 사이트가 인용(citation)되느냐 아니냐가 새로운 SEO의 핵심입니다.

만약 AI 크롤러를 모두 차단하면, AI 검색 결과에서 완전히 사라집니다. 반대로 모든 크롤러를 무분별하게 허용하면, 서버 부하는 높아지고 콘텐츠는 학습 데이터로 무상 활용됩니다. 전략적 판단이 필요합니다.

1.3 AI 크롤러의 세 가지 유형

유형목적예시트래픽 반환
사용자 대면 (User-Facing)사용자 질문에 실시간 답변 생성ChatGPT-User, Claude-User, Perplexity-User인용 + 유입 가능
검색 색인 (Search Indexing)AI 검색 엔진에 콘텐츠 색인OAI-SearchBot, Claude-SearchBot, PerplexityBot검색 노출 가능
학습용 (Training)AI 모델 학습 데이터 수집GPTBot, ClaudeBot, Google-Extended, CCBot없음
핵심 구분! 같은 회사의 크롤러라도 용도가 다릅니다. OpenAI의 ChatGPT-User(사용자 대면)와 GPTBot(학습용)은 완전히 다른 봇입니다. 하나를 차단한다고 다른 것까지 차단되지 않습니다. 각각 별도로 제어해야 합니다.

1.4 기존 SEO와 무엇이 다른가?

전통적 SEO에서는 Googlebot에 크롤링을 허용하면, Google 검색에 노출되어 트래픽이 유입되는 선순환이 있었습니다. 하지만 AI 크롤러 시대에는 두 가지 큰 변화가 있습니다.

첫째, AI가 직접 답변을 생성하기 때문에 사용자가 원본 사이트를 방문하지 않을 수 있습니다. 트래픽 반환이 보장되지 않습니다. 둘째, 학습용 크롤러는 여러분의 콘텐츠를 모델 개선에 사용하지만, 직접적인 보상이 없습니다. 이 때문에 "어떤 크롤러를 허용하고, 어떤 것을 차단할 것인가"라는 전략적 의사결정이 매우 중요해졌습니다.

Chapter 02

주요 AI 크롤러 전체 목록

2.1 2025년 현재 주요 AI 크롤러 총정리

아래는 현재 활동이 확인된 주요 AI 크롤러 목록입니다. 서버 로그에서 이 User-Agent들을 확인할 수 있습니다.

크롤러 이름운영사용도공식 IP 공개
GPTBotOpenAIAI 모델 학습 데이터 수집O
OAI-SearchBotOpenAIChatGPT 검색 기능 색인O
ChatGPT-UserOpenAI사용자 질문 시 실시간 웹 접근O
ClaudeBotAnthropicClaude 모델 학습 데이터 수집X
Claude-UserAnthropic사용자 질문 시 실시간 웹 접근X
Claude-SearchBotAnthropicClaude 검색 품질 개선X
Google-ExtendedGoogleGemini AI 학습 (검색과 별도)O
Gemini-Deep-ResearchGoogleGemini Deep Research 기능O
PerplexityBotPerplexityPerplexity 검색 엔진 색인O
Perplexity-UserPerplexity사용자 질문 시 실시간 접근O
Meta-ExternalAgentMetaLlama 모델 학습 데이터 수집X
BytespiderByteDanceTikTok/AI 학습 데이터 수집X
AmazonbotAmazonAlexa 및 Amazon AI 학습X
CCBotCommon Crawl오픈 웹 아카이브 (다수 AI 기업 활용)O
Applebot-ExtendedAppleApple AI/Siri 학습 데이터 제어O
DuckAssistBotDuckDuckGoDuckDuckGo AI 검색 색인O

2.2 크롤링 빈도의 차이

모든 AI 크롤러가 동일한 빈도로 사이트를 방문하는 것은 아닙니다. Search Engine Journal의 실제 서버 로그 분석에 따르면, ChatGPT-User는 시간당 약 2,400페이지를 크롤링하는 반면, GPTBot은 시간당 약 100페이지 수준입니다. Meta-ExternalAgent는 시간당 약 1,100페이지, Bingbot은 약 1,300페이지를 크롤링합니다.

사용자 대면 크롤러(ChatGPT-User)가 학습용 크롤러(GPTBot)보다 훨씬 많은 요청을 보내는 이유는, 실시간으로 사용자 질문에 응답해야 하기 때문입니다. 이는 사용자 대면 크롤러를 차단하면 서버 부하는 줄어들 수 있지만, AI 플랫폼에서의 가시성도 함께 사라진다는 것을 의미합니다.

주의! Bytespider(ByteDance)는 robots.txt를 무시하는 것으로 악명 높습니다. 또한 you.com, ChatGPT의 Operator, Grok 등 일부 AI 에이전트는 자신을 식별하지 않는 User-Agent를 사용하여 서버 로그에서 추적이 어렵습니다.
Chapter 03

OpenAI 크롤러 상세 분석

3.1 OpenAI의 4가지 크롤러

OpenAI는 목적에 따라 4개의 개별 크롤러를 운영합니다. 각 크롤러는 독립적으로 robots.txt를 따르므로, 하나를 차단해도 나머지에는 영향이 없습니다.

GPTBot — 학습용 크롤러

GPTBot은 OpenAI의 차세대 GPT 모델 학습을 위해 공개 웹 콘텐츠를 수집합니다. 이 크롤러를 차단(Disallow)하면, 향후 OpenAI 모델 학습에 여러분의 콘텐츠가 사용되지 않습니다. 다만, ChatGPT가 여러분을 인용하거나 검색 결과에 표시하는 것과는 무관합니다.

OAI-SearchBot — 검색 색인용

OAI-SearchBot은 ChatGPT의 검색 기능을 위한 크롤러입니다. 이 봇을 차단하면 ChatGPT 검색 답변에 여러분의 사이트가 표시되지 않습니다(단, 내비게이션 링크로는 표시될 수 있음). AI 검색 노출을 원한다면 반드시 허용해야 합니다.

ChatGPT-User — 사용자 요청 대응

사용자가 ChatGPT에 질문할 때, 실시간으로 웹페이지를 방문하는 에이전트입니다. 사용자의 직접적인 행위에 의해 발동되므로, OpenAI는 이 봇에 대해 robots.txt 규칙이 적용되지 않을 수 있다고 밝히고 있습니다. 검색 노출 제어는 OAI-SearchBot으로 관리해야 합니다.

OAI-AdsBot — 광고 검증용

ChatGPT에 제출된 광고의 랜딩 페이지 안전성을 검증합니다. 광고로 제출된 페이지만 방문하며, 수집된 데이터는 모델 학습에 사용되지 않습니다.

User-Agent Strings
# GPTBot (학습용)
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.3; +https://openai.com/gptbot)

# OAI-SearchBot (검색 색인)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36; compatible; OAI-SearchBot/1.3; +https://openai.com/searchbot

# ChatGPT-User (사용자 대면)
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot

3.2 OpenAI 크롤러 IP 확인

OpenAI는 공식 IP 범위를 JSON 형식으로 공개합니다. 이를 통해 진짜 GPTBot인지, 위장 크롤러인지 검증할 수 있습니다.

공식 IP 리스트 URL
# GPTBot IP 목록
https://openai.com/gptbot.json

# OAI-SearchBot IP 목록
https://openai.com/searchbot.json

# ChatGPT-User IP 목록
https://openai.com/chatgpt-user.json
전략 포인트! OAI-SearchBot과 GPTBot을 모두 허용한 경우, OpenAI는 중복 크롤링을 줄이기 위해 한 번의 크롤링 결과를 두 가지 용도로 활용할 수 있다고 밝히고 있습니다. robots.txt 업데이트 후 반영까지 약 24시간이 소요됩니다.
Chapter 04

Anthropic(Claude) 크롤러 상세 분석

4.1 Anthropic의 3가지 크롤러

Anthropic은 2024년 말 크롤러 문서를 업데이트하면서, 기존 ClaudeBot 하나에서 3개의 개별 봇으로 세분화했습니다. 이를 통해 사이트 운영자가 더 세밀하게 제어할 수 있습니다.

ClaudeBot — 학습용 크롤러

ClaudeBot은 Anthropic의 생성형 AI 모델 학습을 위해 공개 웹 콘텐츠를 수집합니다. robots.txt에서 차단하면 향후 AI 학습 데이터셋에서 여러분의 사이트 콘텐츠가 제외됩니다. Search Engine Journal의 로그 분석에 따르면 시간당 약 500페이지를 크롤링합니다.

Claude-User — 사용자 요청 대응

사용자가 Claude에게 질문할 때, 웹페이지 접근이 필요한 경우 이 봇이 방문합니다. 차단하면 Claude가 사용자 질의에 응답할 때 여러분의 페이지를 가져올 수 없게 되어, 사용자 대면 검색 응답에서의 가시성이 감소할 수 있습니다.

Claude-SearchBot — 검색 색인용

Claude의 검색 결과 품질과 관련성을 높이기 위해 콘텐츠를 크롤링합니다. 차단하면 Claude 기반 검색 답변에서의 노출과 정확성이 감소할 수 있습니다.

User-Agent Strings
# ClaudeBot (학습용)
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)

# Claude-User (사용자 대면)
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; Claude-User/1.0; +Claude-User@anthropic.com)

# Claude-SearchBot (검색 색인)
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; Claude-SearchBot/1.0; +https://www.anthropic.com)

4.2 Anthropic 크롤러의 특이점

Anthropic은 OpenAI, Google과 달리 공식 IP 범위를 공개하지 않습니다. 퍼블릭 클라우드 프로바이더의 IP를 사용하기 때문에, IP 기반 차단은 신뢰성이 낮습니다. IP 범위를 차단하면 오히려 봇이 robots.txt에 접근하지 못하는 역효과가 발생할 수 있습니다.

Anthropic의 모든 봇은 표준 robots.txt 지시문(Disallow)과 비표준 Crawl-delay 확장을 모두 준수한다고 공식 문서에서 밝히고 있습니다. 따라서 robots.txt 기반 제어가 가장 효과적입니다.

각 봇은 독립적! ClaudeBot을 차단해도 Claude-User와 Claude-SearchBot에는 영향이 없습니다. 학습용만 차단하고 검색/사용자 대면은 허용하는 세밀한 전략이 가능합니다. 서브도메인마다 별도로 지시문을 추가해야 합니다.
Chapter 05

기타 주요 AI 크롤러

5.1 Google AI 관련 크롤러

Google은 전통적인 Googlebot과 별도로, AI 학습 전용 토큰인 Google-Extended를 운영합니다. 매우 중요한 점은 Google-Extended를 차단해도 Google 검색 랭킹에는 아무 영향이 없다는 것입니다. Google-Extended는 오직 Gemini AI 모델 학습 용도의 데이터 활용을 제어하는 토큰입니다.

Gemini-Deep-Research는 2025년에 추가된 크롤러로, Gemini의 Deep Research 기능(사용자를 대신해 심층 조사를 수행하는 기능)을 위해 웹페이지를 방문합니다.

5.2 Perplexity 크롤러

Perplexity는 PerplexityBot(검색 색인)과 Perplexity-User(사용자 대면) 두 가지를 운영합니다. Perplexity의 인터페이스는 출처(source)를 강하게 강조하며, "Read More" 링크를 통해 실질적인 리퍼럴 트래픽을 보내줍니다. AI 검색 엔진 중 출처 표시가 가장 명확한 편이므로, 두 봇 모두 허용하는 것이 유리합니다.

5.3 Meta, ByteDance, Amazon

Meta-ExternalAgent는 Meta의 Llama 모델 학습에 사용됩니다. 시간당 약 1,100페이지를 크롤링하며, 공식 IP 범위가 공개되지 않아 검증이 어렵습니다. Bytespider(ByteDance)는 robots.txt를 무시하는 것으로 유명하며, 명확한 가치 교환 없이 공격적으로 크롤링합니다. Amazonbot은 Alexa 및 Amazon AI 서비스 학습에 활용됩니다.

5.4 식별 불가능한 AI 에이전트

점점 더 많은 AI 에이전트가 일반 사용자 브라우저와 동일한 User-Agent를 사용하여 자신을 식별하지 않습니다. ChatGPT의 Atlas 브라우저, Grok, you.com, Bing Copilot 채팅 등이 이에 해당합니다. 이런 에이전트는 서버 로그에서 일반 방문자와 구별할 수 없으며, 사실상 차단이 불가능합니다.

현실적 한계 AI 에이전트 브라우저(Agentic AI Browser)의 등장으로, 모든 AI 크롤러를 완벽하게 제어하는 것은 이미 불가능합니다. robots.txt는 "정중한 요청"에 불과하며, 이를 준수할 의지가 없는 봇은 어차피 무시합니다. 전략은 "선의의 봇을 올바르게 관리하는 것"에 초점을 맞춰야 합니다.
Chapter 06

robots.txt 설정 완벽 가이드

6.1 기본 원리

robots.txt는 웹사이트 루트 디렉토리(example.com/robots.txt)에 위치하는 텍스트 파일로, 크롤러에게 "이 영역은 접근하지 마세요"라고 요청하는 규약입니다. 법적 강제력은 없지만, 주요 AI 기업들(OpenAI, Anthropic, Google, Perplexity)은 이를 준수합니다.

6.2 AI 크롤러별 robots.txt 설정 예시

시나리오 A: AI 학습은 차단, AI 검색 노출은 허용

가장 일반적이고 권장되는 전략입니다. 학습용 크롤러는 차단하되, 사용자 대면 및 검색 색인 크롤러는 허용합니다.

robots.txt
# ============================================
# AI 학습용 크롤러 차단 (모델 트레이닝에 콘텐츠 사용 불허)
# ============================================

# OpenAI - 학습용
User-agent: GPTBot
Disallow: /

# Anthropic - 학습용
User-agent: ClaudeBot
Disallow: /

# Google - AI 학습용 (검색 랭킹에 영향 없음)
User-agent: Google-Extended
Disallow: /

# Meta - Llama 학습용
User-agent: meta-externalagent
Disallow: /

# ByteDance - 공격적 크롤러
User-agent: Bytespider
Disallow: /

# Common Crawl - 다수 AI 기업이 학습에 활용
User-agent: CCBot
Disallow: /

# ============================================
# AI 검색/사용자 대면 크롤러 허용 (AI 검색 노출 유지)
# ============================================

# OpenAI - ChatGPT 검색
User-agent: OAI-SearchBot
Allow: /

# OpenAI - 사용자 대면
User-agent: ChatGPT-User
Allow: /

# Anthropic - 사용자 대면
User-agent: Claude-User
Allow: /

# Anthropic - 검색 색인
User-agent: Claude-SearchBot
Allow: /

# Perplexity - 검색 색인
User-agent: PerplexityBot
Allow: /

# Perplexity - 사용자 대면
User-agent: Perplexity-User
Allow: /

# ============================================
# 기존 검색엔진 (항상 허용)
# ============================================
User-agent: Googlebot
Allow: /

User-agent: Bingbot
Allow: /

# Sitemap 위치
Sitemap: https://example.com/sitemap.xml

시나리오 B: 모든 AI 크롤러 전면 허용

AI 검색 가시성을 최대화하고, 콘텐츠가 학습에 사용되는 것도 수용하는 전략입니다. 퍼블릭 콘텐츠 위주의 미디어, 블로그, 문서 사이트에 적합합니다.

robots.txt
# 모든 크롤러 허용 (기본값)
User-agent: *
Allow: /

# 민감한 영역만 차단
User-agent: *
Disallow: /admin/
Disallow: /api/
Disallow: /user/dashboard/

Sitemap: https://example.com/sitemap.xml

시나리오 C: 부분 허용 (특정 디렉토리만 개방)

공개 블로그 콘텐츠는 허용하되, 유료 콘텐츠나 핵심 IP는 보호하는 전략입니다.

robots.txt
# GPTBot - 블로그만 허용, 나머지 차단
User-agent: GPTBot
Allow: /blog/
Allow: /docs/
Disallow: /

# ClaudeBot - 동일 전략
User-agent: ClaudeBot
Allow: /blog/
Allow: /docs/
Disallow: /

# 검색용 봇은 전체 허용
User-agent: OAI-SearchBot
Allow: /

User-agent: Claude-SearchBot
Allow: /

6.3 Crawl-delay 설정

Crawl-delay는 봇에게 요청 간 대기 시간을 요청하는 비표준 지시문입니다. 서버 부하가 우려될 때 유용합니다. Anthropic은 이를 준수한다고 밝히고 있습니다.

robots.txt
# ClaudeBot에 10초 간격 요청
User-agent: ClaudeBot
Crawl-delay: 10
Allow: /blog/
Disallow: /
실무 팁! robots.txt 변경 후 OpenAI 시스템에 반영되기까지 약 24시간이 걸립니다. 긴급하게 차단이 필요하면, Cloudflare 같은 CDN 레벨에서 봇을 차단하는 것이 더 빠릅니다.
Chapter 07

llms.txt — AI를 위한 새로운 표준

7.1 llms.txt란?

llms.txt는 호주 기술자 Jeremy Howard가 제안한 새로운 웹 표준으로, AI/LLM이 웹사이트 콘텐츠에 효율적으로 접근할 수 있도록 마크다운 형식의 파일을 웹사이트 루트에 배치하는 방식입니다. robots.txt가 "차단"을 위한 것이라면, llms.txt는 "최적화된 제공"을 위한 것입니다.

7.2 왜 llms.txt가 필요한가?

LLM은 웹사이트 정보를 점점 더 많이 활용하지만, 근본적인 한계가 있습니다. 컨텍스트 윈도우는 대부분의 웹사이트 전체를 처리하기엔 너무 작고, 내비게이션, 광고, JavaScript가 포함된 복잡한 HTML을 LLM 친화적인 순수 텍스트로 변환하는 것은 어렵고 부정확합니다. llms.txt는 이 문제를 해결합니다.

웹사이트의 핵심 콘텐츠를 깔끔한 마크다운으로 정리하여, LLM이 더 적은 리소스로 더 정확하게 정보를 파악할 수 있게 합니다. 일종의 "LLM을 위한 사이트맵"이라고 이해하면 됩니다.

7.3 llms.txt 구조와 작성법

llms.txt (예시)
# My Company Name

> 회사에 대한 간단한 설명 (1-2문장)

## Docs

- [시작하기](https://example.com/docs/getting-started.md): 제품 시작 가이드
- [API 레퍼런스](https://example.com/docs/api-reference.md): 전체 API 문서
- [FAQ](https://example.com/docs/faq.md): 자주 묻는 질문

## Blog

- [AI 크롤러 가이드](https://example.com/blog/ai-crawlers.md): AI 크롤러 최적화 방법
- [SEO 2026 전략](https://example.com/blog/seo-2026.md): 최신 SEO 트렌드

## Optional

- [이용약관](https://example.com/terms.md)
- [개인정보처리방침](https://example.com/privacy.md)

7.4 llms-full.txt — 전체 콘텐츠 제공

llms.txt가 사이트의 목차 역할이라면, llms-full.txt는 전체 콘텐츠를 하나의 텍스트 파일로 "평탄화(flatten)"한 것입니다. LLM이 사이트 전체를 한 번에 이해할 수 있어, 더 정확한 응답 생성이 가능합니다.

실제로 Anthropic(docs.anthropic.com/llms-full.txt), Perplexity(docs.perplexity.ai/llms-full.txt), Zapier(docs.zapier.com/llms-full.txt) 등 주요 AI 기업들이 이미 자사 문서에 llms.txt를 채택하고 있습니다.

7.5 llms.txt의 현재 한계

llms.txt는 아직 제안(proposal) 단계이며 공식 표준은 아닙니다. 모든 AI 기업이 이를 활용하는 것은 아니며, 2025년 8월 기준 대부분의 AI 크롤러가 llms.txt를 무시한다는 보고도 있습니다. 다만, Cloudflare, WordPress 플러그인 등에서 지원이 늘어나고 있어 도입 가치는 있습니다.

robots.txt vs llms.txt 비교
robots.txt: "이 영역은 크롤링하지 마세요" (차단/제한)
llms.txt: "이 콘텐츠를 이 구조로 가져가세요" (안내/최적화)
두 파일은 상호 배타적이지 않으며, 함께 사용하는 것이 가장 효과적입니다.

7.6 llms.txt 생성 도구

  • Markdowner — 무료 오픈소스, 웹사이트를 구조화된 마크다운으로 변환
  • Apify llms.txt Generator — 자동으로 llms.txt 생성
  • Website LLMs (WordPress 플러그인) — 포스트/페이지 기반 자동 생성
  • FireCrawl — 초기부터 llms.txt 생성을 지원한 도구
Chapter 08

크롤러 전략 프레임워크

8.1 3단계 의사결정 프레임워크

모든 AI 크롤러를 동일하게 취급하는 것은 최악의 전략입니다. "모두 차단"은 AI 가시성을 잃고, "모두 허용"은 콘텐츠를 무상으로 내어주는 결과를 낳습니다. 다음 3단계 프레임워크를 적용하세요.

단계대상HTTP 응답이유
허용 (Allow)사용자 대면 크롤러200 OK실제 사용자 의도를 대변, 인용과 트래픽 유입
협상/과금 (Charge)학습용 크롤러402 Payment Required콘텐츠 가치에 대한 보상 요구
차단 (Block)공격적 크롤러403 Forbidden규칙 무시, 가치 교환 없음, 서버 부하

8.2 Tier 1: 항상 허용해야 할 크롤러

ChatGPT-User, Claude-User, Perplexity-User, OAI-SearchBot, Claude-SearchBot, PerplexityBot — 이 봇들은 실제 사용자가 AI에 질문할 때 여러분의 콘텐츠를 가져가 인용합니다. 차단하면 AI 플랫폼에서 완전히 보이지 않게 됩니다. 이것은 2010년에 Googlebot을 차단하는 것과 같습니다.

8.3 Tier 2: 협상 또는 과금할 크롤러

GPTBot, ClaudeBot, Google-Extended, Meta-ExternalAgent, CCBot — 이 봇들은 콘텐츠를 가져가 모델을 학습시키지만, 직접적인 트래픽이나 보상을 제공하지 않습니다. 2025년 현재, Cloudflare는 HTTP 402(Payment Required) 응답을 통해 이 봇들에게 "콘텐츠 라이선싱이 필요하다"는 신호를 보낼 수 있는 기능을 제공합니다.

8.4 Cloudflare Pay Per Crawl

Cloudflare가 2025년에 도입한 Pay Per Crawl은 콘텐츠 제작자가 AI 학습용 크롤러에 대해 요청당 과금할 수 있는 시스템입니다. 사이트 전체에 균일한 요청당 가격을 설정하면, Cloudflare가 Merchant of Record로서 요금을 징수하고 정산합니다. 과금 계약이 없는 크롤러는 402 응답을 받게 됩니다.

Cloudflare 402 응답 헤더 예시
HTTP/1.1 402 Payment Required
Content-Type: text/plain
crawler-price: 0.005

This content requires licensing for AI training purposes.
Contact: partnerships@example.com
Terms: https://example.com/ai-licensing

8.5 Tier 3: 반드시 차단할 크롤러

Bytespider, 미확인 스크래퍼, 공격적 대량 다운로더 — 규칙을 무시하고, 가치 교환이 없으며, 서버 리소스만 소모합니다. robots.txt로도 차단하고, CDN/방화벽 레벨에서도 추가 차단하는 것이 좋습니다.

8.6 비즈니스 유형별 권장 전략

비즈니스 유형학습용 봇검색/사용자 봇이유
뉴스/미디어402 과금전면 허용인용을 통한 트래픽이 핵심 수익원
SaaS 문서허용전면 허용AI 노출 = 개발자 유입 = 전환
이커머스차단허용상품 데이터는 경쟁 우위, 검색 노출은 필요
유료 콘텐츠차단부분 허용무료 미리보기만 공개, 핵심은 보호
개인 블로그허용허용최대한 많은 노출이 유리
기업 내부 문서전면 차단전면 차단기밀 정보 보호 최우선
가장 흔한 실수 5가지
1. 모든 AI 봇을 한꺼번에 차단 → AI 검색 가시성 완전 상실
2. 모든 봇을 무차별 허용 → 학습 데이터 무상 제공 + 서버 과부하
3. 크롤러 검증 없이 User-Agent만 신뢰 → 위장 크롤러에 취약
4. 한번 설정 후 방치 → 새 플랫폼 크롤러에 대응 못함
5. 402 대신 403으로 일괄 차단 → 라이선싱 협상 기회 상실
Chapter 09

GEO: 생성형 엔진 최적화

9.1 GEO란?

GEO(Generative Engine Optimization)는 AI 기반 검색 엔진(ChatGPT, Perplexity, Gemini 등)에서 여러분의 콘텐츠가 인용(citation)되도록 최적화하는 전략입니다. 전통적 SEO가 "검색 결과 페이지에서의 랭킹"을 목표로 했다면, GEO는 "AI 응답에서의 인용"을 목표로 합니다.

9.2 AI가 인용하는 콘텐츠의 특징

AI가 특정 콘텐츠를 인용하는 데에는 패턴이 있습니다. 단순히 키워드를 최적화하는 것이 아니라, AI가 "이 출처가 신뢰할 만하고, 정확하며, 답변에 유용하다"고 판단하는 구조를 갖추는 것이 핵심입니다.

  • 명확한 답변 구조 — 질문에 대한 직접적인 답변이 콘텐츠 초반에 위치
  • 신뢰 신호(Trust Signal) — 통계, 연구 인용, 전문가 의견, 구체적 수치 포함
  • 권위적 톤 — 단정적이고 전문적인 서술, "~일 수도 있다" 보다 "~이다"
  • 고유한 정보(Information Gain) — 다른 곳에서 찾기 어려운 독자적 인사이트
  • 구조화된 콘텐츠 — 명확한 H2/H3 계층, 목록, 표 등으로 정보 정리
  • 최신성 — 최근 업데이트된 콘텐츠를 우선 인용하는 경향

9.3 GEO 실전 최적화 전략

전략 1: "답변 먼저" 콘텐츠 구조

AI는 긴 서론보다 핵심 답변을 먼저 제시하는 콘텐츠를 선호합니다. 저널리즘의 "역피라미드" 구조처럼, 가장 중요한 정보를 가장 먼저 배치하세요. 결론을 맨 위에 두고, 상세 설명은 아래로 전개합니다.

전략 2: 통계와 인용으로 신뢰 구축

"많은 사용자가 선호한다"보다 "2025년 조사에서 73%의 사용자가 선호한다(출처: XYZ Research)"가 AI 인용 확률을 크게 높입니다. 구체적인 숫자, 날짜, 출처를 포함하세요.

전략 3: 토픽 클러스터링

하나의 주제를 깊이 다루는 "필러 콘텐츠"와, 세부 주제를 다루는 "클러스터 콘텐츠"를 상호 연결하세요. AI는 특정 주제에 대해 포괄적이고 깊이 있는 사이트를 신뢰 소스로 판단합니다.

전략 4: 엔티티(Entity) 중심 콘텐츠

AI는 키워드가 아닌 "엔티티(개체)"를 이해합니다. 사람, 조직, 제품, 개념 등의 엔티티를 명확히 정의하고, 엔티티 간의 관계를 콘텐츠에서 분명하게 드러내세요.

전략 5: FAQ 및 구조화된 Q&A

AI는 질문-답변 쌍을 매우 효과적으로 추출합니다. 실제 사용자가 묻는 질문을 H2/H3로 배치하고, 바로 아래에 간결하고 정확한 답변을 제공하세요.

GEO와 SEO는 대립이 아닙니다! GEO에 좋은 콘텐츠는 대부분 SEO에도 좋습니다. 명확한 구조, 신뢰할 수 있는 정보, 깊이 있는 콘텐츠는 Google 검색과 AI 검색 모두에서 유리합니다. GEO를 "SEO의 확장"으로 이해하세요.
Chapter 10

구조화 데이터(Schema Markup)와 AI

10.1 AI가 구조화 데이터를 활용하는 방식

구조화 데이터(Schema Markup)는 웹페이지의 콘텐츠를 기계가 이해할 수 있는 형식으로 표현하는 방법입니다. AI 검색에서 구조화 데이터가 직접적으로 "인용을 보장"하지는 않지만, AI가 콘텐츠를 정확히 이해하고 엔티티를 식별하는 데 도움을 줍니다.

예를 들어, Organization 스키마가 있으면 AI는 "이 사이트가 어떤 조직의 것인지"를 정확히 파악합니다. Article 스키마가 있으면 "이 콘텐츠의 작성일, 저자, 주제"를 명확히 인식합니다. 이는 AI가 출처의 신뢰성을 판단하는 데 기여합니다.

10.2 AI 검색에 유용한 Schema 유형

JSON-LD (Article + Organization)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "AI 크롤러 최적화 완벽 가이드",
  "description": "GPTBot, ClaudeBot 등 AI 크롤러 관리 전략",
  "author": {
    "@type": "Person",
    "name": "홍길동",
    "url": "https://example.com/author/hong"
  },
  "publisher": {
    "@type": "Organization",
    "name": "테크 블로그",
    "url": "https://example.com",
    "logo": {
      "@type": "ImageObject",
      "url": "https://example.com/logo.png"
    }
  },
  "datePublished": "2025-12-01",
  "dateModified": "2026-04-15",
  "mainEntityOfPage": "https://example.com/ai-crawler-guide"
}
</script>
JSON-LD (FAQPage)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "GPTBot을 차단하면 ChatGPT 검색에서 사라지나요?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "아닙니다. GPTBot은 학습용이고, ChatGPT 검색은 OAI-SearchBot이 담당합니다. GPTBot을 차단해도 ChatGPT-User와 OAI-SearchBot을 허용하면 검색 노출에는 영향이 없습니다."
      }
    },
    {
      "@type": "Question",
      "name": "Google-Extended를 차단하면 구글 검색 순위가 떨어지나요?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "아닙니다. Google-Extended는 Gemini AI 학습 전용 토큰으로, Google 검색 랭킹과는 완전히 독립적입니다. 안심하고 차단할 수 있습니다."
      }
    }
  ]
}
</script>

10.3 AI 친화적 콘텐츠 마크업 원칙

  • 시맨틱 HTML 사용 — article, section, header, nav 등 의미 있는 태그 활용
  • 명확한 헤딩 계층 — H1 → H2 → H3 순서를 지키고, 각 섹션의 주제를 헤딩에 명시
  • 메타 태그 최적화 — title, description에 핵심 정보를 간결하게 담기
  • 날짜 정보 명시 — datePublished, dateModified를 스키마와 HTML 모두에 포함
  • 저자 정보 표시 — E-E-A-T(경험, 전문성, 권위, 신뢰)를 AI가 판단할 수 있도록
구조화 데이터만으로는 부족합니다. Schema markup은 AI가 콘텐츠를 "이해"하는 데 도움을 주지만, 인용 여부를 결정하는 것은 콘텐츠의 품질과 고유성입니다. 구조화 데이터는 "필요 조건"이지 "충분 조건"이 아닙니다.
Chapter 11

모니터링, 검증, 보안

11.1 서버 로그에서 AI 크롤러 확인하기

실제로 어떤 AI 봇이 내 사이트를 방문하는지 확인하는 가장 정확한 방법은 서버 접근 로그를 분석하는 것입니다.

Bash (Linux 서버)
# Apache/Nginx 접근 로그에서 AI 크롤러 찾기
grep -i "GPTBot\|ClaudeBot\|PerplexityBot\|OAI-SearchBot\|ChatGPT-User\|Claude-User\|Claude-SearchBot\|Bytespider\|meta-externalagent" /var/log/apache2/access.log

# 크롤러별 요청 수 집계
grep -oP "GPTBot|ClaudeBot|PerplexityBot|OAI-SearchBot|ChatGPT-User|Claude-User|Bytespider|meta-externalagent" /var/log/apache2/access.log | sort | uniq -c | sort -rn

# 특정 크롤러의 최근 활동 (마지막 100건)
grep "GPTBot" /var/log/apache2/access.log | tail -100

# 일일 크롤링 볼륨 추적
grep "ClaudeBot" /var/log/apache2/access.log | awk '{print $4}' | cut -d: -f1 | sort | uniq -c

11.2 가짜(위장) 크롤러 식별

User-Agent 문자열은 누구나 위조할 수 있습니다. 터미널에서 단 한 줄로 ClaudeBot을 사칭할 수 있습니다.

위장 크롤러 예시
# 누구나 이렇게 AI 봇을 사칭할 수 있음
curl -A 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)' https://example.com

진짜 크롤러인지 확인하는 가장 신뢰할 수 있는 방법은 IP 검증입니다. OpenAI, Google, Perplexity 등은 공식 IP 범위를 JSON으로 공개합니다. 요청 IP가 공식 목록에 있는지 확인하면 됩니다.

Bash (IP 검증)
# OpenAI GPTBot 공식 IP 목록 다운로드
curl -s https://openai.com/gptbot.json | python3 -m json.tool

# 서버 로그의 GPTBot IP가 공식 목록에 있는지 확인
# (수동 비교 또는 스크립트 자동화)

# Reverse DNS로 확인 (Google 크롤러)
host 66.249.66.1
# → crawl-66-249-66-1.googlebot.com (진짜)
# → 다른 호스트명 (위장)

11.3 Cloudflare를 활용한 크롤러 관리

Cloudflare의 AI Crawl Control(구 AI Audit)은 시각적 대시보드에서 AI 크롤러를 관리할 수 있는 도구입니다. 무료 플랜에서도 크롤러 분류(AI Assistant, AI Search, Search Engine), 트래픽 패턴 시각화, 개별 크롤러 Allow/Block 설정이 가능합니다.

robots.txt와 Cloudflare 차단의 차이는 명확합니다. robots.txt는 "정중한 요청"이므로 봇이 무시할 수 있지만, Cloudflare 차단은 엣지(CDN) 레벨에서 요청이 서버에 도달하기 전에 차단합니다. 규칙을 무시하는 공격적 크롤러에는 Cloudflare 차단이 필수입니다.

11.4 WordPress에서의 AI 크롤러 관리

WordPress 사용자는 Wordfence 무료 플러그인을 활용하여 공식 IP만 허용하고 위장 크롤러를 차단하는 방화벽 규칙을 설정할 수 있습니다. 허용 리스트(Allowlist)에 공식 IP를 등록하고, 해당 User-Agent를 사칭하는 다른 IP는 차단하는 방식입니다.

분기별 리뷰 필수! AI 생태계는 급변합니다. 새로운 크롤러가 등장하고, 기존 크롤러 정책이 바뀝니다. 최소 분기에 한 번은 서버 로그를 점검하고, robots.txt 및 방화벽 규칙을 업데이트하세요.
Chapter 12

실전 체크리스트 & 총정리

12.1 AI 크롤러 최적화 즉시 실행 체크리스트

단계작업소요 시간우선순위
1현재 robots.txt 확인 — AI 봇이 실수로 차단되지 않았는지 점검5분긴급
2서버 로그에서 AI 크롤러 활동 확인30분높음
33단계 전략(허용/과금/차단) 결정 후 robots.txt 업데이트1시간높음
4llms.txt 파일 생성 및 배포2-4시간중간
5구조화 데이터(Schema) 추가 또는 점검2-3시간중간
6콘텐츠를 GEO 원칙에 맞게 구조화지속적중간
7Cloudflare AI Crawl Control 설정 (사용 시)30분선택
8분기별 리뷰 일정 캘린더 등록5분높음

12.2 robots.txt 한눈에 보기 치트시트

robots.txt 최종 권장 템플릿
# ============================================
# AI 크롤러 최적화 robots.txt 템플릿
# 마지막 업데이트: 2026-05-01
# ============================================

# ── 학습용 크롤러: 차단 (또는 402 과금) ──
User-agent: GPTBot
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: Google-Extended
Disallow: /

User-agent: meta-externalagent
Disallow: /

User-agent: Bytespider
Disallow: /

User-agent: CCBot
Disallow: /

# ── 검색/사용자 대면 크롤러: 허용 ──
User-agent: OAI-SearchBot
Allow: /

User-agent: ChatGPT-User
Allow: /

User-agent: Claude-User
Allow: /

User-agent: Claude-SearchBot
Allow: /

User-agent: PerplexityBot
Allow: /

User-agent: Perplexity-User
Allow: /

User-agent: DuckAssistBot
Allow: /

User-agent: Gemini-Deep-Research
Allow: /

# ── 전통 검색엔진: 항상 허용 ──
User-agent: Googlebot
Allow: /

User-agent: Bingbot
Allow: /

User-agent: Applebot
Allow: /

# ── 전체 기본 규칙 ──
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /api/internal/
Disallow: /tmp/

# Sitemap
Sitemap: https://example.com/sitemap.xml

12.3 자주 묻는 질문 (FAQ)

Q: GPTBot을 차단하면 ChatGPT에서 내 사이트가 안 보이나요?

아닙니다. GPTBot(학습용)과 ChatGPT-User/OAI-SearchBot(검색/사용자 대면)은 완전히 별개입니다. GPTBot을 차단해도 ChatGPT 검색에서는 여전히 노출될 수 있습니다. 단, OAI-SearchBot을 차단하면 ChatGPT 검색 결과에서 사라집니다.

Q: Google-Extended를 차단하면 구글 검색 순위에 영향이 있나요?

전혀 없습니다. Google-Extended는 Gemini AI 학습 전용 토큰으로, Google 검색 색인과는 완전히 독립적입니다. 안심하고 차단해도 됩니다.

Q: robots.txt를 업데이트하면 즉시 반영되나요?

아닙니다. OpenAI는 약 24시간, 다른 크롤러도 수 시간에서 수일이 걸릴 수 있습니다. 긴급한 경우 CDN/방화벽 레벨에서 차단하세요.

Q: Anthropic 봇은 IP로 차단할 수 있나요?

권장하지 않습니다. Anthropic은 퍼블릭 클라우드 IP를 사용하며 공식 IP 범위를 공개하지 않습니다. IP 차단 시 봇이 robots.txt에 접근하지 못해 오히려 문제가 될 수 있습니다. robots.txt 기반 제어를 사용하세요.

Q: llms.txt는 꼭 만들어야 하나요?

필수는 아니지만 권장합니다. 아직 모든 AI가 활용하지는 않지만, 선제적으로 도입하면 향후 표준화 시 유리합니다. 특히 기술 문서나 API 문서가 있는 사이트는 효과가 큽니다.

12.4 핵심 요약 — 기억해야 할 5가지

AI 크롤러 최적화 5대 원칙

1. 구분하라 — 학습용 봇과 사용자 대면 봇은 완전히 다릅니다. 같은 회사의 봇도 용도별로 개별 관리하세요.

2. 전략적으로 선택하라 — "모두 차단" 또는 "모두 허용"은 최악의 전략입니다. 3단계 프레임워크(허용/과금/차단)를 적용하세요.

3. AI를 위해 콘텐츠를 구조화하라 — 명확한 헤딩, 답변 우선 구조, 통계 인용, 구조화 데이터를 갖춘 콘텐츠가 AI에 인용됩니다.

4. 지속적으로 관리하라 — AI 생태계는 매우 빠르게 변합니다. 분기별 리뷰와 업데이트가 필수입니다.

5. 크롤링 허용은 시작일 뿐이다 — 크롤러를 허용해도 콘텐츠 품질이 낮으면 인용되지 않습니다. GEO 최적화와 함께 가야 합니다.

12.5 유용한 리소스 링크

리소스URL용도
OpenAI 크롤러 공식 문서developers.openai.com/api/docs/botsGPTBot/OAI-SearchBot 정책
Anthropic 크롤러 문서support.anthropic.com (크롤러 FAQ)ClaudeBot 정책
Google AI 크롤러developers.google.com/search/docs/crawling-indexing/google-common-crawlersGoogle-Extended 정책
Perplexity 봇 문서docs.perplexity.ai/guides/botsPerplexityBot 정책
llms.txt 공식 제안llmstxt.orgllms.txt 스펙
Cloudflare AI Crawl Controldevelopers.cloudflare.com/ai-crawl-control크롤러 대시보드
GPTBot IP 목록openai.com/gptbot.jsonIP 검증
Schema.orgschema.org구조화 데이터 참조

12.6 마치며

AI 크롤러 최적화는 더 이상 선택이 아닙니다. 제품 발견의 40%가 AI 플랫폼에서 시작되는 시대에, AI 크롤러를 전략적으로 관리하지 않으면 잠재 고객의 절반에게 보이지 않는 존재가 됩니다.

이 가이드에서 다룬 내용을 실행하는 데 며칠이면 충분합니다. robots.txt 업데이트 5분, 서버 로그 점검 30분, llms.txt 생성 수 시간. 이 작은 투자가 AI 검색 시대에 여러분의 사이트를 "보이는 존재"로 만들어 줄 것입니다.

AI 생태계는 계속 진화하고 있습니다. 새로운 크롤러가 등장하고, 기존 정책이 변경되고, 새로운 표준이 제안됩니다. 이 가이드도 지속적으로 업데이트가 필요합니다. 중요한 것은 지금 시작하는 것입니다. 완벽한 전략보다 빠른 실행이 이 빠르게 변하는 환경에서 더 가치 있습니다.

최종 점검 사항
지금 바로 example.com/robots.txt에 접속하여 여러분의 현재 설정을 확인하세요. OAI-SearchBot과 Claude-SearchBot이 실수로 차단되어 있지는 않은지, Bytespider가 자유롭게 크롤링하고 있지는 않은지 확인해 보세요. 오늘의 5분이 내일의 AI 가시성을 결정합니다.